External-Network Data Content Exposure to Network-Connected Devices

ABSTRACT

Described herein are one or more implementations for exposing data content (e.g., digital media) of a portable digital media device over a network to one or more network-connected electronics devices, where such exposing is done via a network-connected personal computer to which the portable digital media device is directed coupled (e.g., via a USB). Also, described herein are one or more implementations for gathering a customized collection of data content from web-feeds at a web-connected personal computer and exposing that gathered web-feed data content to a network-connected electronics devices (such as a set-top box for a television).

CROSS-REFERENCE TO RELATED APPLICATION

The present application claims priority to and is a continuation-in-partto co-pending U.S. patent application Ser. No. 10/742,588, filed on Dec.19, 2003 and entitled “Routing of Resource Information in a Network,”which is incorporated herein by reference.

BACKGROUND

This background section will briefly cover background material for threetopics of interest in relationship to the implementations describedherein. Those topics are Universal Plug and Play (UPnP), PC-coupled(e.g., USB) data-content devices, and web-feeds (e.g., RSS).

Universal Plug and Play (UPnP)

Universal Plug and Play (UPnP) provides a network architecture thatfacilitates adding and removing devices from a network. For instance,the UPnP architecture allows a user to simply “plug” a new device into anetwork coupling; thereafter, the network will automatically determinethe new device's characteristics and subsequently coordinate interactionbetween this new device and others in the network based on thedetermined characteristics. The UPnP architecture is particularly wellsuited for networks associated with a local setting, such as a home, abusiness, a school, etc. (Note that the term “Universal Plug and Play”derives from functionality provided in the earlier developed device Plugand Play (PnP); device PnP provides a flexible technique forautomatically adding and removing peripherals to a standalone computerdevice, such as a PC).

An exemplary UPnP architecture and its conventional functions are shownin FIGS. 1 and 2 of co-pending U.S. patent application Ser. No.10/742,588 (which is incorporated herein by reference) and the textualdescriptions associated with those drawings figures. Furthermore, theUPnP Forum's web site (i.e., http://upnp.org/) provides additional andmore detailed information regarding the UPnP architecture and relatedtopics.

PC-Coupled Data-Content Devices

With increasing frequency, personal computers (and set-top boxes andother computing devices) have the capability to directly couple withportable, removable storage devices. Such a removable storage device mayconsist of, for example, a solid-state flash drive, a hard-drive mountedin a chassis, or other device non-volatile memory. These devices mayinclude those whose primary function is to store data and those thathave other primary functions (such as playing multimedia stored on thedevice). An example of the latter is a digital media player or aso-called “mp3-player” or “digital video player.”

These portable and removable devices are typically connected to apersonal computer via a “firewire,” a universal serial bus (USB), orsimilar short-range device coupling physical interface cabling. Thismakes it easy for a user to store data and multimedia on the removabledevice and then unplug the device for portability.

Digital media (such as music and video) is often protected via a form ofDigital Rights Management (DRM) and it is common for a portable digitalmedia player to respect and help manage the DRM rights of digital mediastored thereon. Therefore, a DRM-protected media file stored on anauthorized portable media device will play on the device, but will notplay if transferred to an unauthorized device or personal computer.Web-Feeds

Recently, web-feeds have grown increasingly more popular. A web-feed isa generic term for web-syndicated data content that is sent to those onthe web (i.e., the Internet) who have subscribed for updates to suchdata content. Web-feeds are presumably most often used on websites (orweblogs) on which the data content is updated often. Examples of suchdata content includes, for example, news feeds, events listings, weatherupdates, news stories, headlines, project updates, and excerpts fromdiscussion forums.

Web-feeds are best known by the term “RSS” or “RSS-feeds,” which is thename of the most common format of web-feeds. RSS is a family of XMLfile-formats for web syndication. The exact meaning of the abbreviation“RSS” depends upon the context, but it always refers to a web-feedprotocol standard or format.

According to Wikipedia (http://en.wikipedia.org/), the RSS formatstypically provide web content or summaries of web content together withlinks to the full versions of the content, and other meta-data. Thisinformation is delivered as an XML file called an “RSS feed,” “webfeed,”“RSS stream,” or “RSS channel.” In addition to facilitating syndication,RSS allows a website's frequent readers to track updates on the siteusing an “aggregator.”

According to Wikipedia, “RSS is widely used by the weblog community toshare the latest entries' headlines or their full text, and evenattached multimedia files. (See podcasting, broadcatching, photocasting,picturecasting, screencasting, Vloging, and MP3 blogs.) In mid 2000, useof RSS spread to many major news organizations, including Reuters, CNN,and the BBC, under various usage agreements, providers allow otherwebsites to incorporate their ‘syndicated’ headline orheadline-and-short-summary feeds. RSS is now used for many purposes,including marketing, bug-reports, or any other activity involvingperiodic updates or publications.”

SUMMARY

Described herein are one or more implementations for exposing datacontent (e.g., digital media) of a portable digital media device over anetwork to one or more network-connected electronics devices, where suchexposing is done via a network-connected personal computer to which theportable digital media device is directed coupled (e.g., via a USB).Also, described herein are one or more implementations for gathering acustomized collection of data content from web-feeds at a web-connectedpersonal computer and exposing that gathered web-feed data content to anetwork-connected electronics devices (such as a set-top box for atelevision).

This summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identity key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter.

BRIEF DESCRIPTION OF THE DRAWINGS

The same numbers are used throughout the drawings to reference likeelements and features.

FIG. 1 shows exemplary network architecture in accordance with one ormore implementations disclosed herein.

FIG. 2 shows a flow diagram of a methodological implementation inaccordance with one or more implementations disclosed herein.

FIG. 3 shows a flow diagram of a methodological implementation inaccordance with one or more implementations disclosed herein.

FIG. 4 is an example of a computing operating environment capable of(wholly or partially) implementing at least one embodiment describedherein.

DETAILED DESCRIPTION

Described herein is a technology for exposing data content (e.g.,digital media) of a portable digital media device over a network to oneor more network-connected electronics devices. With this technology, thedata content exposure is done via a network-connected personal computerto which the portable digital media device is directed coupled (e.g.,via a USB). Also described herein is a technology for gathering acustomized collection of data content from web-feeds (e.g., RSS feeds)at a web-connected personal computer and exposing that gathered web-feeddata content to a network-connected electronics devices (such as aset-top box for a television).

As used herein, data content expressly includes digital audio, digitalmusic, digital images, digital video, digital multimedia, and any otherrenderable digital content, which may be stored and distributed to andfrom computers and portable devices.

Exemplary Environment

FIG. 1 shows an exemplary environment 100 within which one or moreembodiments, described herein, may be implemented. As depicted, theexemplary environment 100 includes a computer (such as a personalcomputer) 110 with memory 120. The memory 120 may be any availableprocessor-readable media that is accessible by computer 110. The memory120 may be either volatile or non-volatile media. In addition, it may beeither removable or non-removable media.

Running in that memory 120 are two software modules: a data-contentprovider 122 and a network exposer 124. These software modules may beapplication programming interfaces (APIs), device drivers, applications,programs, or the anything similar. Although called software modulesherein, the data-content provider 122 and the network exposer 124 may beimplemented in software alone, hardware alone, firmware alone, or somecombination thereof. The broad concepts of data providing and exposingthat data over a network are familiar territory in the realm of UPnParchitecture and technology.

A removable, portable media device 130 is directly coupled to thecomputer 110 via a short-range direct physical interface coupling, suchas universal serial bus (USB), IEEE 1394 (“firewire”), and the like.Such a removable, portable media device 130 may consist of, for example,a media player with a solid-state flash drive, a hard-drive mounted in achassis, or other device non-volatile memory. Examples of the portablemedia device 130 include the so-called “mp3 player” and “digital videoplayer.” Digital data content (such as music and video) is stored on theportable media device 130. In addition, portable storage devices may beexposed through short range wireless interface as well as wired. In thisscenario, the PC will act as an “aggregator” of the content and it willbe independent of physical means of connectivity.

As depicted, the computer 110 is connected to a public computercommunications network, such as the Internet 140, and connected to aplug-n-play network 140. The plug-n-play network 140 may employ, forexample, a Universal Plug and Play (UPnP) network architecture thatfacilitates adding and removing devices from a network.

In addition to the computer 110, FIG. 1 shows other network-connectedelectronics devices (152, 154, and 156) connected to the plug-n-playnetwork 140. In this example, these electronics devices are UPnP deviceand may include a variety of electronic devices. Exemplarynetwork-connected electronics devices include computers of all types,CD/DVD players/jukeboxes, TVs, VCRs, MP3 players, stereo systems,electronic picture frames (EPFs), various types of still and videocameras, Digital Media Receivers (DMRs), connected DVDs, digital audioreceivers (DARs), digital media hubs, digital media players, digitalmedia streamers, digital video receivers, network media players,networked DVDs, networked entertainment gateways, and so on.

As depicted, device 156 is a DMR, which is a consumer electronics devicethat receives digital media streams from a computer over a wired orwireless home network (such as the plug-n-play network 140). Some DMRshave integrated displays and speakers. Others, like DMR 156, areconnected to an external output device, such as a television 158,powered speakers, or a stereo system.

The plug-n-play network 140 can couple the devices (152, 154, and 156)together using the Transmission Control Protocol and the InternetProtocol (TCP/IP). Of course, the plug-n-play network 140 can alsofreely draw from a number of other standard protocols, such as HypertextTransfer Protocol (HTTP), Simple Object Access Protocol (SOAP), GeneralEvent Notification Architecture (GENA), and so on. The plug-n-playnetwork 140 can be physically implemented using a variety of hardwiredand/or wireless communication mechanisms, such as phone lines, powerlines, Infrared Data Association (IrDa), Ethernet, Radio Frequency (RF)coupling, WiFi, and so on.

A suitable operating and networking environment for the implementationsdescribed herein are shown in FIGS. 3-7 of co-pending U.S. patentapplication Ser. No. 10/742,588 (which is incorporated herein byreference) and described in the textual descriptions associated withthose drawings figures.

Exposure of Data Content from Computer-Coupled Devices

In one implementation, the computer 110 and the portable media device130 are physically coupled in a manner that allows normal and typicalcommunication there between. Indeed, this arrangement is often done toallow the computer 110 and portable media device 130 to synchronize(“synch”) the data content stored on the media device.

Digital media (such as music and video) is often protected via a form ofDigital Rights Management (DRM) and it is common for a portable digitalmedia player (such as the portable media device 130) to respect and helpmanage the DRM rights of digital media stored thereon. Therefore, aDRM-protected media file stored on an authorized portable media devicewill play on the device, but will not play if transferred to anunauthorized device or personal computer.

Furthermore, in conventional approaches, network-connected devicescannot access data content stored on a portable media device that isphysically coupled to a computer, which is connected to the same networkas the network-connected devices. With reference to FIG. 1, thatstatement may restated like this: in conventional approaches,network-connected devices—such as devices (152, 154, and 156) on theplug-n-play network 150—cannot access data content stored on a portablemedia device—such as the portable media device 130—that is physicallycoupled to a computer 110.

However, using implementations described herein, network-connecteddevices—such as devices (152, 154, and 156) on the plug-n-play network150—can be aware of and access the data content stored on a portablemedia device—such as the portable media device 130—that is physicallycoupled to a computer 110. In this context, the data content on theportable media devices may be viewed as “external-network” data contentbecause the data content is external to the network common to thecomputer and devices, which is, in this case, the plug-n-play network150. The data on the portable device 130 is available to the computerbecause the portable device is directly coupled to the computer, butdata content is unavailable (and thus “external”) to the devices on theplug-n-play network 150.

More specifically, the data-content provider 122 is specificallyconfigured to interface with the portable media device 130 and acquireinformation related to the data content stored thereon. Typically, thedata-content provider 122 is specifically programmed to interface withone or more specific types, brands, and/or standards of portable mediadevices.

Once discovered, the network exposer 124 exposes (i.e., makes availablefor browsing, use, copying, and/or other data specific functions) thedata content of the portable media device 130 to the network-connecteddevices—such as devices (152, 154, and 156). Consequently, thenetwork-connected devices may access and consume the data content storedon the portable media device 130.

For example, the portable media device 130 may store a video of anepisode of a popular TV-series. With the implementations describedherein, the DMR 156 may discover that TV episode stored on thecomputer-coupled media device and play the video on its attachedtelevision 158. Even when the TV episode is DRM-protected, the DMR 156may still access the data content because the portable media device 130is authorized to play the TV episode.

Exposure of Customized Web-Feed Collections

In another implementation, the computer 110 is connected to a publiccomputer communications network, such as the Internet 140. Via thisInternet connection, the computer may acquire “web-feeds,” which arecommonly called “RSS feeds.” The typical data content of web-feedsincludes, for example, news feeds, events listings, weather updates,news stories, headlines, project updates, and excerpts from discussionforums.

In this context, the data content derived from web-feeds is viewed as“external-network” data content because the web-feed data content isexternal to the network common to the computer and devices, which is, inthis case, the plug-n-play network 150. The web-feed data content isavailable to the computer because the computer is directly coupled tothe Internet, but the web-feed data content is unavailable (and thus“external”) to the devices on the plug-n-play network 150.

Using a user-interface, a user selects web-feeds that interests theuser. Alternatively, web-feeds may be automatically selected based upondefaults and/or user preferences. Regardless, the web-feeds arecustomized and collected together continuously or on a fixed schedule.More specifically, the data-content provider 122 is specificallyconfigured to access, acquire, and gather the customized collection ofweb-feeds from the Internet 140.

Once accessed, acquired, and gathered, the network exposer 124 exposes(i.e., makes available for browsing, use, copying, and/or other dataspecific functions) the customized web-feed data content collection tothe network-connected devices—such as devices (152, 154, and 156).Consequently, the network-connected devices may access and consume thecustomized web-feed data content collection.

For example, the DMR 156 may discover the current edition of thecustomized web-feed data content collection from the network exposer122. The DMR 156 may render the text and display the text full-screen onits attached television 158. Alternatively, the DMR 156 may render thetext as a horizontal scrolling text and display the customized web-feeddata content collection in the form of a “newscrawler.” Also, instead ofthe DMR rendering the text for display on its TV, the network exposer122 may render the text before sending it to the DMR.

Methodological Implementations

FIG. 2 shows a method 200 for exposing data content of acomputer-connected portable media device to network-connected devices.This method 200 is performed by the one or more of the variouscomponents as depicted in FIG. 1. Furthermore, this method 200 may beperformed in software, hardware, or a combination thereof. For ease ofunderstanding, this method is delineated as separate steps representedas independent blocks in FIG. 2; however, these separately delineatedsteps should not be construed as necessarily order dependent in theirperformance. Additionally, for discussion purposes, the method 200 isdescribed with reference to FIG. 1. Also for discussion purposes,particular components are indicated as performing particular functions;however, other components (or combinations of components) may performthe particular functions.

At 202 of FIG. 2, the data-content provider 122 discovers data contentsof a portable media device (such as device 130) which is directlycoupled to a computer. Part of the discovery includes information (e.g.,metadata) associated with the data content.

At 204, the network exposer 124 exposes the data contents (and itsmetadata) of a portable media device (such as device 130) tonetwork-connected devices (such as devices 152, 154, and 156 on theplug-and-play network 150.

FIG. 3 shows a method 300 for exposing customized collection of web-feeddata content to network-connected devices. This method 300 is performedby the one or more of the various components as depicted in FIG. 1.Furthermore, this method 300 may be performed in software, hardware, ora combination thereof. For ease of understanding, this method isdelineated as separate steps represented as independent blocks in FIG.3; however, these separately delineated steps should not be construed asnecessarily order dependent in their performance. Additionally, fordiscussion purposes, the method 300 is described with reference toFIG. 1. Also for discussion purposes, particular components areindicated as performing particular functions; however, other components(or combinations of components) may perform the particular functions.

At 302 of FIG. 3, the data-content provider 122 accesses, acquires, andgathers the customized collection of web-feeds from the Internet 140.

At 304, the network exposer 124 exposes the customized collection ofweb-feeds data content to network-connected devices (such as devices152, 154, and 156 on the plug-and-play network 150.

Exemplary Computing System and Environment

FIG. 4 illustrates an example of a suitable computing environment 400within which an exemplary network-external data content exposer, asdescribed herein, may be implemented (either fully or partially). Thecomputing environment 400 may be utilized in the computer and networkarchitectures described herein.

The exemplary computing environment 400 is only one example of acomputing environment and is not intended to suggest any limitation asto the scope of use or functionality of the computer and networkarchitectures. Neither should the computing environment 400 beinterpreted as having any dependency or requirement relating to any oneor combination of components illustrated in the exemplary computingenvironment 400.

The exemplary network-external data content exposer may be implementedwith numerous other general purpose or special purpose computing systemenvironments or configurations. Examples of well known computingsystems, environments, and/or configurations that may be suitable foruse include, but are not limited to, personal computers, servercomputers, thin clients, thick clients, hand-held or laptop devices,multiprocessor systems, microprocessor-based systems, set top boxes,personal digital assistants (PDA), appliances, special-purposeelectronics (e.g., a DVD player), programmable consumer electronics,network PCs, minicomputers, mainframe computers, distributed computingenvironments that include any of the above systems or devices, and thelike.

The exemplary network-external data content exposer may be described inthe general context of computer-executable instructions, such as programmodules, being executed by a computer. Generally, program modulesinclude routines, programs, objects, components, data structures, etc.that perform particular tasks or implement particular abstract datatypes. The exemplary network-external data content exposer may also bepracticed in distributed computing environments where tasks areperformed by remote processing devices that are linked through adata-communications network. In a distributed computing environment,program modules may be located in both local and remote computer storagemedia including memory storage devices.

The computing environment 400 includes a general-purpose computingdevice in the form of a computer 402. The components of computer 402 mayinclude, but are not limited to, one or more processors or processingunits 404, a system memory 406, and a system bus 408 that couplesvarious system components, including the processor 404, to the systemmemory 406.

The system bus 408 represents one or more of any of several types of busstructures, including a memory bus or memory controller, a peripheralbus, an accelerated graphics port, and a processor or local bus usingany of a variety of bus architectures. By way of example, sucharchitectures can include a CardBus, Personal Computer Memory CardInternational Association (PCMCIA), Accelerated Graphics Port (AGP),Small Computer System Interface (SCSI), Universal Serial Bus (USB), IEEE1394, a Video Electronics Standards Association (VESA) local bus, and aPeripheral Component Interconnects (PCI) bus, also known as a Mezzaninebus.

Computer 402 typically includes a variety of computer-readable media.Such media may be any available media that is accessible by computer 402and includes both volatile and non-volatile media, removable andnon-removable media.

The system memory 406 includes computer-readable media in the form ofvolatile memory, such as random access memory (RAM) 410, and/ornon-volatile memory, such as read only memory (ROM) 412. A basicinput/output system (BIOS) 414, containing the basic routines that helpto transfer information between elements within computer 402, such asduring start-up, is stored in ROM 412. RAM 410 typically contains dataand/or program modules that are immediately accessible to and/orpresently operated on by the processing unit 404.

Computer 402 may also include other removable/non-removable,volatile/non-volatile computer storage media. By way of example, FIG. 4illustrates a hard disk drive 416 for reading from and writing to anon-removable, non-volatile magnetic media (not shown), a magnetic diskdrive 418 for reading from and writing to a removable, non-volatilemagnetic disk 420 (e.g., a “floppy disk”), and an optical disk drive 422for reading from and/or writing to a removable, non-volatile opticaldisk 424 such as a CD-ROM, DVD-ROM, or other optical media. The harddisk drive 416, magnetic disk drive 418, and optical disk drive 422 areeach connected to the system bus 408 by one or more data mediainterfaces 425. Alternatively, the hard disk drive 416, magnetic diskdrive 418, and optical disk drive 422 may be connected to the system bus408 by one or more interfaces (not shown).

The disk drives and their associated computer-readable media providenon-volatile storage of computer readable instructions, data structures,program modules, and other data for computer 402. Although the exampleillustrates a hard disk 416, a removable magnetic disk 420, and aremovable optical disk 424, it is to be appreciated that other types ofcomputer-readable media, which may store data that is accessible by acomputer, such as magnetic cassettes or other magnetic storage devices,flash memory cards, CD-ROM, digital versatile disks (DVD) or otheroptical storage, random access memories (RAM), read only memories (ROM),electronically erasable programmable read-only memory (EEPROM), and thelike, may also be utilized to implement the exemplary computing systemand environment.

Any number of program modules may be stored on the hard disk 416,magnetic disk 420, optical disk 424, ROM 412, and/or RAM 410, including,by way of example, an operating system 426, one or more applicationprograms 428, other program modules 430, and program data 432.

A user may enter commands and information into computer 402 via inputdevices such as a keyboard 434 and a pointing device 436 (e.g., a“mouse”). Other input devices 438 (not shown specifically) may include amicrophone, joystick, game pad, satellite dish, serial port, scanner,and/or the like. These and other input devices are connected to theprocessing unit 404 via input/output interfaces 440 that are coupled tothe system bus 408, but may be connected by other interface and busstructures, such as a parallel port, game port, or a universal serialbus (USB).

A monitor 442 or other type of display device may also be connected tothe system bus 408 via an interface, such as a video adapter 444. Inaddition to the monitor 442, other output peripheral devices may includecomponents, such as speakers (not shown) and a printer 446, which may beconnected to computer 402 via the input/output interfaces 440.

Computer 402 may operate in a networked environment using logicalconnections to one or more remote computers, such as a remote computingdevice 448. By way of example, the remote computing device 448 may be apersonal computer, a portable computer, a server, a router, a networkcomputers a peer device or other common network node, and the like. Theremote computing device 448 is illustrated as a portable computer thatmay include many or all of the elements and features described herein,relative to computer 402.

Logical connections between computer 402 and the remote computer 448 aredepicted as a local area network (LAN) 450 and a general wide areanetwork (WAN) 452. Such networking environments are commonplace inoffices, enterprise-wide computer networks, intranets, and the Internet.Such networking environments may be wired or wireless.

When implemented in a LAN networking environment, the computer 402 isconnected to a local network 450 via a network interface or adapter 454.When implemented in a WAN networking environment, the computer 402typically includes a modem 456 or other means for establishingcommunications over the wide network 452. The modem 456, which may beinternal or external to computer 402, may be connected to the system bus408 via the input/output interfaces 440 or other appropriate mechanisms.It is to be appreciated that the illustrated network connections areexemplary and that other means of establishing communication link(s)between the computers 402 and 448 may be employed.

In a networked environment, such as that illustrated with computingenvironment 400, program modules depicted, relative to the computer 402or portions thereof, may be stored in a remote memory storage device. Byway of example, remote application programs 458 reside on a memorydevice of remote computer 448. For purposes of illustration, applicationprograms and other executable program components, such as the operatingsystem, are illustrated herein as discrete blocks, although it isrecognized that such programs and components reside at various times indifferent storage components of the computing device 402, and areexecuted by the data processor(s) of the computer.

Computer-Executable Instructions

An implementation of an exemplary network-external data content exposermay be described in the general context of computer-executableinstructions, such as program modules, executed by one or more computersor other devices. Generally, program modules include routines, programs,objects, components, data structures, etc. that perform particular tasksor implement particular abstract data types. Typically, thefunctionality of the program modules may be combined or distributed asdesired in various embodiments.

Exemplary Operating Environment

FIG. 4 illustrates an example of a suitable operating environment 400 inwhich an exemplary network-external data content exposer may beimplemented. Specifically, the exemplary network-external data contentexposer(s) described herein may be implemented (wholly or in part) byany program modules 428-430 and/or operating system 426 in FIG. 4, or aportion thereof

The operating environment is only an example of a suitable operatingenvironment and is not intended to suggest any limitation as to thescope or use of functionality of the exemplary network-external datacontent exposer(s) described herein. Other well known computing systems,environments, and/or configurations that are suitable for use include,but are not limited to, personal computers (PCs), server computers,hand-held or laptop devices, multiprocessor systems,microprocessor-based systems, programmable consumer electronics,wireless phones and equipment, general and special-purpose appliances,application-specific integrated circuits (ASICs), network PCs,minicomputers, mainframe computers, distributed computing environmentsthat include any of the above systems or devices, and the like.

Computer-Readable Media

An implementation of an exemplary network-external data content exposermay be stored on or transmitted across some form of computer-readablemedia. Computer-readable media may be any available media that may beaccessed by a computer. By way of example, computer-readable media maycomprise, but is not limited to, “computer storage media” and“communications media.”

“Computer storage media” include volatile and non-volatile, removableand non-removable media implemented in any method or technology forstorage of information such as computer readable instructions, datastructures, program modules, or other data. Computer storage mediaincludes, but is not limited to, RAM, ROM, EEPROM, flash memory or othermemory technology, CD-ROM, digital versatile disks (DVD) or otheroptical storage, magnetic cassettes, magnetic tape, magnetic diskstorage or other magnetic storage devices, or any other medium which maybe used to store the desired information and which may be accessed by acomputer.

“Communication media” typically embodies computer-readable instructions,data structures, program modules, or other data in a modulated datasignal, such as carrier wave or other transport mechanism. Communicationmedia also includes any information delivery media.

Conclusion

The discussion herein focuses on the Universal Plug and Play (UPnP)architecture and network. However, that specific network framework ismerely exemplary. The functionality of the described implementations mayand can be implemented using other kinds of architectures and networks(that is, the functionality is not limited to networks that include UPnPentities).

Generally, the terms “entity” and “device” should be construed broadlyherein. These terms can refer to discrete standalone units forperforming ascribing tasks, can comprise systems composed of multipleunits, or can comprise hardware and/or software components containedwithin units, and so on.

The techniques, described herein, may be implemented in many ways,including (but not limited to) program modules, general- andspecial-purpose computing systems, network servers and equipment,dedicated electronics and hardware, and as part of one or more computernetworks. The techniques may, for example, be implemented on a computersystem depicted in FIG. 4.

Although the one or more above-described implementations have beendescribed in language specific to structural features and/ormethodological steps, it is to be understood that other implementationsmay be practiced without the specific features or steps described.Rather, the specific features and steps are disclosed as preferred formsof one or more implementations.

1. A system comprising: a data-content provider configured to discovernetwork-external data content, which is data content which is normallyunavailable to most electronic devices connected to a common network; anetwork-exposer configured to expose the discovered network-externaldata content to multiple electronic devices on the common network.
 2. Asystem as recited in claim 1, wherein the network-external data contentis stored on a portable storage device configured to be coupled to acomputer, which is connected to the common network.
 3. A system asrecited in claim 1, wherein the network-external data content is storedon a portable digital media player configured to be coupled to acomputer.
 4. A system as recited in claim 1, wherein thenetwork-external data content is stored on a portable digital mediaplayer configured to be coupled to a computer and wherein the datacontent is selected from a group consisting of digital audio, digitalmusic, digital images, digital video, digital multimedia, and any otherrenderable digital content, which may be stored and distributed to andfrom computers and portable devices.
 5. A system as recited in claim 1,wherein the network-external data content is derived from multipleweb-feeds.
 6. A system as recited in claim 1, wherein thenetwork-external data content is derived from multiple web-feeds and isselected from a group consisting of digital audio, digital music,digital images, and digital video.
 7. A system comprising: adata-content provider configured to discover data content stored on aportable storage device that is directly coupled to a computer, thecomputer being connected to a common network; a network-exposerconfigured to expose the discovered data content to one or morenetwork-connected electronic devices over the common network.
 8. Asystem as recited in claim 7, wherein the portable storage device is aportable digital media player.
 9. A system as recited in claim 7,wherein the portable storage device is configured to be coupled to thecomputer via direct connection.
 10. A system as recited in claim 7,wherein the data content is selected from a group consisting of digitalaudio, digital music, digital images, digital video, digital multimedia,and any other renderable digital content, which may be stored anddistributed to and from computers and portable devices.
 11. A systemcomprising: a data-content provider configured to acquire web-feed datacontent from a web-feed communication network; a network-exposerconfigured to expose the acquired web-feed data content to one or morenetwork-connected electronic devices over a network, which is not theweb-feed communications network.
 12. A system as recited in claim 11,wherein data-content provider is further configured to collect multipleweb-feeds for the acquired data content.
 13. A system as recited inclaim 11, wherein data-content provider is further configured tocustomize the collection of multiple web-feeds of the acquired datacontent.
 14. A system as recited in claim 11, wherein acquired web-feeddata content is derived from RSS formatted feeds.
 15. A system asrecited in claim 11, wherein the acquired web-feed data content isselected from a group consisting of digital audio, digital music,digital images, digital video, digital multimedia, and any otherrenderable digital content, which may be stored and distributed to andfrom computers and portable devices.
 16. A method comprising the actsof: discovering data content stored on a portable storage device that isdirectly coupled to a computer, the computer being connected to a commonnetwork; exposing the discovered data content to one or morenetwork-connected electronic devices over the common network.
 17. Amethod as recited in claim 16, further comprising providing thediscovered data content to one or more network-connected electronicdevices over the common network.
 18. A method as recited in claim 16,wherein the portable storage device is a portable digital media player.19. A method comprising the acts of: acquiring web-feed data contentfrom a web-feed communication network; exposing the acquired web-feeddata content to one or more network-connected electronic devices over anetwork, which is not the web-feed communications network.
 20. A methodas recited in claim 19 further comprising collecting a customizedcollection of the acquired web-feed data content.
 21. A method asrecited in claim 19 further comprising rendering the acquired web-feeddata content for display on a video screen as a “newscrawler” over videobeing presented on the video screen.
 22. A method as recited in claim19, wherein the web-feed data content comprises one or more RSS-feeds.23. A method as recited in claim 19, wherein the web-feed data contentcomprises textual characters, the method further comprising presentingthe web-feed data content in a computer-readable textual format to theone or more network-connected electronic devices.
 24. A method asrecited in claim 19 the method further comprising: converting textualcharacters of the web-feed data content into a computer-readable digitalimage format; presenting the web-feed data content in acomputer-readable digital image format to the one or morenetwork-connected electronic devices.
 25. A method as recited in claim19 the method further comprising: text-to-speech converting textualcharacters of the web-feed data content into a computer-readable digitalaudio format; presenting the web-feed data content in acomputer-readable digital audio format to the one or morenetwork-connected electronic devices.